package ru.niir.goodfil.exceptions;

import javax.mail.MessagingException;

/**
 * Исключение возникает при ошибке в работе подсистемы уведомлений
 */
public class MailerException extends GoodfilException {
    /**
     * Ошибка в работе системы уведомлений
     */
    private final MailerError error;

    /**
     * Конструктор
     *
     * @param error ошибка в работе системы уведомлений
     */
    public MailerException(MailerError error) {
        super("Ошибка в работе подсистемы уведомлений: " + error.getDescription());
        this.error = error;
    }

    public MailerException(MessagingException e) {
        super(e.getMessage());
        this.error = MailerError.MESSAGING_ERROR;
    }

    /**
     * Возвращает ошибку в работе системы уведомлений
     *
     * @return ошибка в работе системы уведомлений
     */
    public MailerError getError() {
        return error;
    }
}
